-- XSD schema extracted from ITU-T X.1195 (02/2011)

<?xml version="1.0" encoding="UTF-8"?> <schema xmlns:iwp="urn:itu-t:sg17:2010:04-iwp" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" targetNamespace="urn:itu-t:sg17:2010:04-iwp" elementFormDefault="qualified" attributeFormDefault="unqualified"> <import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/> <import namespace="http://www.w3.org/2001/04/xmlenc#" schemaLocation="http://www.w3.org/TR/2002/REC-xmlenc-core-20021210/xenc-schema.xsd"/> <import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/> <!-- Elements --> <element name="authenticationHelloRequest" type="iwp:AuthenticationHelloRequest"/> <element name="authenticationHelloResponse" type="iwp:AuthenticationHelloResponse"/> <element name="authenticationRequest" type="iwp:AuthenticationRequest"/> <element name="authenticationResponse" type="iwp:AuthenticationResponse"/> <element name="negotiationRequest" type="iwp:NegotiationRequest"/> <element name="negotiationResponse" type="iwp:NegotiationResponse"/> <element name="transmissionHelloRequest" type="iwp:TransmissionHelloRequest"/> <element name="transmissionHelloResponse" type="iwp:TransmissionHelloResponse"/> <element name="identificationRequest" type="iwp:IdentificationRequest"/> <element name="identificationResponse" type="iwp:IdentificationResponse"/> <element name="transmissionRequest" type="iwp:TransmissionRequest"/> <element name="transmissionResponse" type="iwp:TransmissionResponse"/> <!-- Basic Types --> <complexType name="Request" abstract="true"/> <complexType name="Response" abstract="true"> <attribute name="status" type="string" use="required"/> </complexType> <simpleType name="Version"> <restriction base="string"> <pattern value="\d{1,2}\.\d{1,9}"/> </restriction> </simpleType> <complexType name="idListType"> <sequence> <element name="id" type="anyURI" maxOccurs="unbounded"/> </sequence> </complexType> <simpleType name="Nonce"> <restriction base="base64Binary"> <minLength value="16"/> <maxLength value="512"/> </restriction> </simpleType> <complexType name="Extensions"> <sequence maxOccurs="unbounded"> <any namespace="##any" minOccurs="0"/> </sequence> <attribute name="critical" type="boolean"/> </complexType> <complexType name="Identifier"> <sequence> <element name="keyIdentifier" type="base64Binary"/> </sequence> </complexType> <simpleType name="TransmissionRequestControlType"> <restriction base="string"> <enumeration value="start"/> <enumeration value="finish"/> </restriction> </simpleType> <simpleType name="TransmissionResponseControlType"> <restriction base="string"> <enumeration value="pause"/> <enumeration value="resume"/> <enumeration value="finish"/> </restriction> </simpleType> <!-- iwp-TransmissionHelloRequest--> <complexType name="TransmissionHelloRequest"> <complexContent> <extension base="iwp:Request"> <sequence> <element name="entityId" type="iwp:Identifier"/> <element name="extensions" type="iwp:Extensions" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType> <!-- iwp-TransmissionHelloResponse --> <complexType name="TransmissionHelloResponse"> <complexContent> <extension base="iwp:Response"> <sequence> <element name="entityId" type="iwp:Identifier"/> <element name="nonce" type="iwp:Nonce"/> <element name="extensions" type="iwp:Extensions" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType> <!-- iwp-AuthenticationHelloRequest --> <complexType name="AuthenticationHelloRequest"> <complexContent> <extension base="iwp:Request"> <sequence> <element name="protocolVersion" type="iwp:Version"/> <element name="authenticationMethods" type="iwp:idListType"/> <element name="extensions" type="iwp:Extensions" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType> <!-- iwp-AuthenticationHelloResponse --> <complexType name="AuthenticationHelloResponse"> <complexContent> <extension base="iwp:Response"> <sequence> <element name="protocolVersion" type="iwp:Version"/> <element name="selectedAuthenticationMethod" type="anyURI"/> <element name="extensions" type="iwp:Extensions" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType> <!-- iwp-AuthenticationRequest --> <complexType name="AuthenticationRequest" abstract="true"/> <complexType name="AuthenticationResponse" abstract="true"/> <!-- iwp-NegotationRequest --> <complexType name="NegotiationRequest"> <complexContent> <extension base="iwp:Request"> <sequence> <element name="items" type="iwp:NegotiationRequestItemType"/> <element name="nonce" type="iwp:Nonce"/> <element name="extensions" type="iwp:Extensions" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType> <!-- iwp-NegotiationResponse --> <complexType name="NegotiationResponse"> <complexContent> <extension base="iwp:Response"> <sequence> <element name="items" type="iwp:NegotiationResponseItemType"/> <element name="extensions" type="iwp:Extensions" minOccurs="0"/> <element name="signature" type="base64Binary"/> </sequence> </extension> </complexContent> </complexType> <complexType name="NegotiationRequestItemType"> <sequence> <element name="rightsFormats" type="iwp:idListType"/> <element name="metadataFormats" type="iwp:idListType"/> <element name="secureChannels" type="iwp:idListType"/> </sequence> </complexType> <complexType name="NegotiationResponseItemType"> <sequence> <element name="selectedRightsFormat" type="anyURI"/> <element name="selectedMetadataFormat" type="anyURI"/> <element name="selectedSecureChannel" type="anyURI"/> </sequence> </complexType> <!-- iwp-IdentificationRequest --> <complexType name="IdentificationRequest"> <complexContent> <extension base="iwp:Request"> <sequence> <element name="nonce" type="iwp:Nonce"/> <element name="extensions" type="iwp:Extensions" minOccurs="0"/> <element name="signature" type="base64Binary"/> </sequence> </extension> </complexContent> </complexType> <!-- iwp-IdentificationResponse --> <complexType name="IdentificationResponse"> <complexContent> <extension base="iwp:Response"> <sequence> <element name="extensions" type="iwp:Extensions" minOccurs="0"/> <element name="signature" type="base64Binary"/> </sequence> </extension> </complexContent> </complexType> <!-- iwp-TransmissionRequest --> <complexType name="TransmissionRequest"> <complexContent> <extension base="iwp:Request"> <attribute name="controlCommand" type="iwp:TransmissionRequestControlType" use="required"/> </extension> </complexContent> </complexType> <!-- iwp-TransmissionResponse --> <complexType name="TransmissionResponse"> <complexContent> <extension base="iwp:Response"> <attribute name="controlCommand" type="iwp:TransmissionResponseControlType" use="required"/> </extension> </complexContent> </complexType> </schema>